10 个疯狂的 Python 项目创意
↓推荐关注↓
这些项目构想很有可能会让你对这门神奇的语言产生兴趣。最棒的是,你可以通过这些有趣但也具有挑战性的项目来增强 Python 编程技能。
作者 | Juan Cruz Martinez译者 | 刘雅梦 来源 | InfoQ
1. 使用语音命令创建软件 GUI
如今,桌面应用程序开发领域已经取得了巨大进步。你能看到许多拖拽式 GUI 构建器和语音识别库。那么,为什么不能将它们结合在一起,通过与计算机对话来创建一个用户界面呢?这是一个全新的概念,经过一番研究,我发现还没有人尝试这样做。因此,它可能比下面提到的那些更具挑战性。下面是使用 Python 开始这个项目的一些说明。首先,你需要用到如下的包:语音识别库
PAGE ——拖拽式 GUI 构建器
PAGE 的文档
PAGE 是如何工作的视频
使用 PAGE 创建登录窗口
2. AI 博彩机器人
博彩是一种人们预测结果的活动,如果他们猜对了,就会得到回报。在过去几年中,人工智能或机器学习领域出现了许多技术进步。例如,你可能听说过像 AlphaGo Master、AlphaGo Zero 和 AlphaZero 这样的程序,它们可以比任何专业的人类玩家都能更好地玩 Go(游戏)。你甚至可以获得类似 Leela Zero 这样程序的 源码。我想表达的一点是,人工智能正在变得比我们更聪明。这意味着它可以通过考虑所有的可能性并从过去的经验中学习来更好地预测一些事情。让我们在 Python 中应用一些有监督学习的概念创建一个 AI 博彩机器人吧。要开始本项目,这里有一些你需要使用到的库。pandas——数据分析
NumPy——多维数组、矩阵和数学函数
scikit-learn ——机器学习
XGBoost —— 梯度提升(Gradient Boosting)
Matplotlib ——绘图
seaborn ——统计数据可视化
pickle ——Python 对象序列化
你可以在 Roger Federer 身上以 1.3 的赔率押 10 美元。
如果他获胜,你将获得 10 美元(实际金额),外加 3 美元(利润)。
如果他输了,你也会输掉你的钱(例如,10 美元)。
3. 交易机器人
交易机器人与上一个项目非常相似,因为它也需要 AI 来进行预测。现在的问题是,AI 是否可以正确地预测股价的波动?当然,答案是肯定的。在开始之前,我们需要一些数据来开发一个交易机器人。Yahoo Finance —— 获取股票数据
Alpha Vantage —— 用于金融数据的实时 API
初学者的交易策略
只有通过了这五步测试才能进行交易
4. 钢铁侠 Jarvis(基于 AI 的虚拟助手)
这个想法取材于好莱坞电影《钢铁侠》系列。这部电影围绕着科技、机器人和 AI 展开。在这里,钢铁侠用人工智能为自己打造了一个虚拟助手。该程序被称为 Jarvis,可以帮助钢铁侠完成日常任务。钢铁侠使用简单的英语向 Jarvis 发出指令,Jarvis 也用英语回应。这意味着我们的程序需要语音识别以及文本转语音的功能。建议使用这些库:语音识别
文字转语音 (TTS)
设置手机闹钟。
不停地检查家里的监控摄像头,并告知是否有人在外面等着。你可以添加更多的功能,如人脸检测和识别。它可以帮助你了解外面有哪些人或者有多少人。
打开 / 关闭房间的窗户。
打开 / 关闭灯。
自动回复电子邮件。
安排任务。
5. 监控某个网站以了解即将举行的艺术家演唱会
Songkick 是一项非常受欢迎的服务,它可以提供有关即将举行的音乐会的信息。其 API 可用于通过以下方式搜索即将举行的音乐会:艺术家
位置
会场
日期和时间
7. 识别人群中的个人
如今,政府已在公共场所安装了监控摄像头,以提高公民的安全性。这些摄像头大多只是用于录制视频,法医专家必须手动识别或跟踪个人。如果我们创建一个 Python 程序来实时识别摄像头中的每个人会怎么样呢?首先,我们需要访问国家身份证数据库,但我们可能没有权限访问。所以,一个简单的选择是创建一个包含家庭成员记录的数据库。然后,可以使用一个 人脸识别库(https://pypi.org/project/face-recognition/),并将其与摄像头的输出连接起来。8. 接触者追踪
接触者追踪是一种识别所有在特定时间段内相互接触的人的方法。它主要用于像 COVID-19 或 HIV 这样的大流行病。因为没有任何关于谁被感染了的数据,我们无法阻止其传播。Python 可以与称为 DBSCAN(Density-Based Spatial Clustering of Applications with Noise,基于密度的带噪声的应用程序空间聚类)的机器学习算法一起用于接触者追踪。由于这只是一个附属项目,因此我们无法获得任何官方数据。目前,最好使用 Mockaroo 生成一些实际的测试数据。你可以查看 这篇文章(https://towardsdatascience.com/contact-tracing-using-less-than-30-lines-of-python-code-6c5175f5385f) 以了解具体代码实现。9. 自动将文件从一个文件夹移动到另一个文件夹
这是一个非常基本的 Python 程序,始终监视某个文件夹,每当有文件添加到该文件夹中时,它都会检查其类型并相应地将其移动到特定的文件夹中。例如,我们可以跟踪我们的下载文件夹。现在,当一个新文件被下载时,它会根据其类型自动将其移动到另一个文件夹中。.exe 文件很可能是软件设置程序,因此将其移至“软件”文件夹中。而将图片(png、jpg、gif) 移动在“ 图像”文件夹中。通过这种方式,我们可以组织不同类型的文件,以便快速访问。10. 从 YouTube 上收集职业道路相关的视频
创建一个应用程序,接受我们需要学习的职业技能名称。例如,要成为一名 Web 开发人员,我们需要学习:HTML5
CSS3
JavaScript
后端语言(PHP、Node.js、 Python、ASP.NET、或 Java)
Bootstrap 4
WordPress
后端框架 (Laravel、Codeigniter、Django、Flask 等)
等等。
- EOF -
推荐阅读 点击标题可跳转2、消灭 for 循环!Python 的矩阵传播机制和矩阵运算
3、用 Python 爬取了《扫黑风暴》数据,并将其可视化分析后,终于知道它为什么这么火了~
看完本文有收获?请分享给更多人
推荐关注「Linux 爱好者」,提升Linux技能
点赞和在看就是最大的支持❤️